--- /dev/null
+[Desktop Entry]
+Type=Application
+Name=GNOME settings overrides migration
+NoDisplay=True
+Exec=@libexecdir@/gnome-shell-overrides-migration.sh
)
install_data('00_org.gnome.shell.gschema.override', install_dir: schemadir)
+overrides_migration_conf = configuration_data()
+overrides_migration_conf.set('libexecdir', libexecdir)
+overrides_migration = configure_file(
+ input: 'gnome-shell-overrides-migration.desktop.in',
+ output: 'gnome-shell-overrides-migration.desktop',
+ configuration: overrides_migration_conf,
+ install_dir: autostartdir
+)
+
if have_systemd
unitconf = configuration_data()
unitconf.set('bindir', bindir)
libdir = join_paths(prefix, get_option('libdir'))
libexecdir = join_paths(prefix, get_option('libexecdir'))
mandir = join_paths(prefix, get_option('mandir'))
+sysconfdir = join_paths(prefix, get_option('sysconfdir'))
pkgdatadir = join_paths(datadir, meson.project_name())
pkglibdir = join_paths(libdir, meson.project_name())
+autostartdir = join_paths(sysconfdir, 'xdg', 'autostart')
convertdir = join_paths(datadir, 'GConf', 'gsettings')
desktopdir = join_paths(datadir, 'applications')
ifacedir = join_paths(datadir, 'dbus-1', 'interfaces')
subdir('po')
subdir('data')
subdir('tests')
+subdir('tools')
if get_option('gtk_doc')
subdir('docs/reference')
--- /dev/null
+#!/bin/sh
+
+PKG_DATA_DIR=${XDG_DATA_HOME:-$HOME/.local/share}/gnome-shell
+
+MIGRATION_GUARD=$PKG_DATA_DIR/gnome-overrides-migrated
+OVERRIDE_SCHEMA=
+
+if [ -f $MIGRATION_GUARD ]; then
+ exit # already migrated
+fi
+
+# Find the right session
+if echo $XDG_CURRENT_DESKTOP | grep -q -v GNOME; then
+ exit # not a GNOME session
+fi
+
+if echo $XDG_CURRENT_DESKTOP | grep -q Classic; then
+ OVERRIDE_SCHEMA=org.gnome.shell.extensions.classic-overrides
+else
+ OVERRIDE_SCHEMA=org.gnome.shell.overrides
+fi
+
+mkdir -p $PKG_DATA_DIR
+
+for k in `gsettings list-keys $OVERRIDE_SCHEMA`
+do
+ if [ $k = button-layout ]; then
+ orig_schema=org.gnome.desktop.wm.preferences
+ else
+ orig_schema=org.gnome.mutter
+ fi
+
+ oldValue=`gsettings get $OVERRIDE_SCHEMA $k`
+ curValue=`gsettings get $orig_schema $k`
+ if [ $oldValue != $curValue ]; then
+ gsettings set $orig_schema $k $oldValue
+ fi
+done && touch $MIGRATION_GUARD
--- /dev/null
+install_data('gnome-shell-overrides-migration.sh',
+ install_dir: libexecdir,
+ install_mode: 'rwxr-xr-x'
+)